React 19
慣習として、非同期なtransition関数をActionsと呼ぶ
ここでtransitionって厳密には何?と思ったが、
useTransitionもあるように、
stateの変化を指す(結果としてコンポーネントツリーも変わりうる)遷移全般を指すと思えば良さそう
なので、pending stateやデータの更新等、諸々を含む
元useFormState
provider経由っぽい感じで、親のformのstatusを取り出す
雰囲気がuseDefferedValueと似ているが、optimistic(楽観的)とあるので、楽観的更新のoptimisticだろう 変更時に、古い値を残して、レンダリング完了後に置き換えるのがuseDefferedValueに対して
変更時に、新しい値をすぐに反映してしまうのがuseOptimisticなのだろう
use
promiseをunwrapする
use does not support promises created in render.
contextもuseできるようになった
server components
ref as a prop
Context as a provider
cleanup functions for refs
地味に嬉しいやつだ
Support for Document Metadata
Support for stylesheets
Support for async scripts
Support for preloading resources
後半のhead周りに書くやつとかをcomponentにおけるやつ(hoisting)は面白い
よりco-locationが得意になる
こっちの方面での発展が続くかどうかがきになる
コンポーネントが、複数の領域を同時に扱えるようになる方向性
ホスティング
head周りの要素を置けるようになる
特にscriptタグとかCSSあたりの使用感きになる
useFormStatus(親のformの状態を見れる)
自力でホスティングを書く方法が強化されたら、設計の仕方が変わるだろう
自前でhoistingの方向、場所などを指定できるようになったら
そもそも可能か?
今回の件で内部的にはそういうことをしてるから、もしかしたらそれができるようになっていく?いやー
それはapiとして優れているか?
読んで理解しにくくなってヤバそう